.. _cmcDoGetLogic: cmcDoGetLogic ================================ -------------------------------- SYNOPSYS ````````````` .. code-block:: none VT_I4 cmcDoGetLogic ([in] VT_I4 BoardID, [in] VT_I4 Axis, [in] VT_I4 Channel, [out] VT_PI4 InputLogic ) DESCRIPTION ````````````` - cmcDoSetLogic()/cmcDoGetLogic() 함수는 ëŒ€ìƒ ë””ì§€í„¸ ì¶œë ¥ 채ë„ì˜ ë…¼ë¦¬(Logic) ì„¤ì • í˜¹ì€ ì„¤ì •ìƒíƒœë¥¼ 반환합니다. \ - ì´ í•¨ìˆ˜ì˜ ì‚¬ìš©ê³¼ í˜¸ì¶œì— ìžˆì–´, ì œê³µëœ ãˆœì»¤ë¯¸ì¡°ì•„ì˜ í•¨ìˆ˜ í—¤ë” Visual Basic ì—서는 í•¨ìˆ˜ì˜ ì²¨ë‘ì–´ cmc ê°€ 붙지 않습니다. PARAMETER ````````````` â–¶ BoardID : 사용ìžê°€ ì„¤ì •í•œ 디바ì´ìŠ¤(ë³´ë“œ) ID. â–¶ Axis: Axis 번호(Axis 번호는 3부터 시작합니다.). â–¶ Channel : ì±„ë„ ë²ˆí˜¸. 통합 채ë„ë¡œ 관리ë˜ëŠ” ì±„ë„ ë²ˆí˜¸ë¥¼ ì˜ë¯¸í•˜ë©°, ìƒìˆ˜ 값으로 0 (Zero Based) ì´ìƒ, 최대 통합 채ë„수 - 1 ì´í•˜ì˜ ê°’ì„ ì±„ë„ ë²ˆí˜¸ë¡œ ì„¤ì •í• ìˆ˜ 있습니다. â–¶ Logic : ëŒ€ìƒ ë””ì§€í„¸ I/O 채ë„ì˜ ë…¼ë¦¬(Logic)를 ì„¤ì • í˜¹ì€ ì„¤ì •ìƒíƒœë¥¼ 반환합니다. .. csv-table:: :widths: 10 90 :header-rows: 1 :stub-columns: 0 Value, Meaning 0 (cmcLOGIC_A), A ì ‘ì ë°©ì‹ => í‰ìƒì‹œ Open, ê°ì§€ë˜ë©´ Close ë˜ëŠ” 스위치 ë°©ì‹ 1 (cmcLOGIC_B), B ì ‘ì ë°©ì‹ => í‰ìƒì‹œ Close, ê°ì§€ë˜ë©´ Open ë˜ëŠ” 스위치 ë°©ì‹ RETURN VALUE ````````````` .. csv-table:: :widths: 10 90 :header-rows: 1 :stub-columns: 0 Value, Meaning ìŒìˆ˜, 수행 실패 0(ERR_NONE), 수행 성공 EXAMPLE ``````````````` .. code-block:: c++ :linenos: :emphasize-lines: 5 C/C++ #include “ComiMLink3_SDK.h†#include “ComiMLink3_SDK_Def.h†/* 1번 채ë„ì˜ ë¡œì§ì„ „B ì ‘ì ‟ 으로 ì„¤ì •í•˜ê³ ì„¤ì •ëœ ìƒíƒœë¥¼ 확ì¸í•©ë‹ˆë‹¤. */ #define CHANNEL 1 Long BoardID = 0; long lGetDioLogic =0; // ì„¤ì •í•œ 디지털 ìž…ì¶œë ¥ 논리를 반환하기 위한 변수 // 1번 채ë„ì˜ ë¡œì§ì„ Bì ‘ì 으로 ì„¤ì •í•©ë‹ˆë‹¤. if(cmcDoSetLogic (BoardID, 3, CHANNEL, cmcLOGIC_B ) != ERR_NONE ) { OutputDebugString("cmcDoSetLogic function Fail"); } // 1번 채ë„ì˜ ì„¤ì •ëœ ë¡œì§ ìƒíƒœë¥¼ 확ì¸í•©ë‹ˆë‹¤. if(cmcDoGetLogic (BoardID, 3, CHANNEL, &lGetDioLogic) != ERR_NONE ) { OutputDebugString ( " cmcDoGetLogic function Fail" ); }